home *** CD-ROM | disk | FTP | other *** search
- PATCHVB
- -------
- By Rick Esterling, Copyright 1994, All Rights Reserved
-
- PatchVB is FREEWARE. You may modify and use it as you find fit, but it may
- not be resold or used in any way to make a profit. If you do use it, some
- credit would be appreciated. You are encouraged to send your
- comments/suggestions to:
-
- Rick Esterling
- Three Cruse Alley
- Huntsville, AL 35801
- 205-536-8568
-
- Internet: esterra@widget.msfc.nasa.gov
- CIS: 73322,702 (I hang out in the MSBASIC forum daily)
-
-
- WHAT IT DOES
- ------------
- I've heard several people say that they don't like the default action that
- VB programs take when they are exectued from the DOS command line. For
- those of you that have never tried it, VB programs don't just report "This
- program requires Microsoft Windows" and exit as do 99% of the other Windows
- programs. Rather, it tries to invoke Windows and then exectutes your
- program at startup. I personally prefer it to just respond as other
- Windows programs do, so I wrote this patch.
-
-
- HOW IT WORKS
- ------------
- PatchVB simply reads an EXE file and tries to determine whether or not the
- file is a Visual Basic program. It does this by searching for the part of
- the stub in the EXE that files off Windows. If it finds the stub, it
- simply renames the call to Win.com to an invalid filename (a backslant and
- two NUL characters (ASCII 255). That way, when your VB EXE tries to launch
- Windows, it cannot find WIN.COM so it gracefully exits.
-
-
-
- AN EXTRA TRICK
- --------------
- VB uses its own stub to create the stub of any EXEs that it compiles. This
- means if you patch VB.EXE itself, then all the programs that you compile
- thereafter will automatically include this patch and will not need further
- attention.
-
-
-
- DISCLAIMER
- ----------
- As is the case with any program that modifies your executable files, great
- caution should be used before you try PatchVB on any of your programs.
- ALWAYS MAKE BACKUPS BEFORE APPLYING THIS PATCH! As you can see from the
- source code, PatchVB doesn't do anything "blindly". It tries to convince
- itself as much as it can that it's about to do the right thing, but just in
- case, make a backup, ok?
-
-
-
- FOR FUTURE REFERENCE
- --------------------
- If you use PatchVB on any of your programs and then decide later that you
- want to restore the original stub, you should be able to very easily
- reverse engineer PatchVB since the source code is included. PatchVB itself
- can detect when a program has already had the patch applied, so all you
- would need to do is change that part to reinsert the correct filename that
- PatchVB originally renamed as described above. If you can't get it going,
- let me know (via one of the addresses shown at the top of this document)
- and I will provide you with a program to restore the original stub.
-
-
-
- Happy patching,
-
- Rick Esterling
- 12 Feb 94
-